package net.xxcxcxcx.xc_enhancedmob.render.boss_bar.complete.sever;

import net.minecraft.entity.mob.MobEntity;
import net.minecraft.server.network.ServerPlayerEntity;

import java.util.Set;

/**
 * SeverCustomBossBar的接口
 */
public interface SeverBaseCustomBossBarComplete {
    //添加玩家
    void addPlayer(ServerPlayerEntity player);

    //移除玩家
    void removePlayer(ServerPlayerEntity player);

    //添加加载玩家
    void addRenderPlayer(ServerPlayerEntity player);

    //移除加载玩家
    void removeRenderPlayer(ServerPlayerEntity player);

    //清除所有玩家
    void clearPlayers();

    void UpdataRader();

    void Updata(SeverCustomBossBarComplete.UpdataType updataType, ServerPlayerEntity player);

    Set<ServerPlayerEntity> getUnmodifiablePlayers();

    Set<ServerPlayerEntity> getUnmodifiableRenderPlayers();

    Boolean getVisible();

    void setVisible(Boolean visible);

    MobEntity getMobEntity();

    void setMobEntity(MobEntity mobEntity);
}
